#pragma once

#define VISIT_PROCS_MSVBVM(visit) \
	visit(ThunRTMain, jmpaddr) \
	visit(VBDllUnRegisterServer, jmpaddr) \
	visit(VBDllCanUnloadNow, jmpaddr) \
	visit(VBDllRegisterServer, jmpaddr) \
	visit(VBDllGetClassObject, jmpaddr) \
	visit(UserDllMain, jmpaddr) \
	visit(__vbaAryLock, jmpaddr) \
	visit(__vbaBoolErrVar, jmpaddr) \
	visit(__vbaRedimVar2, jmpaddr) \
	visit(__vbaStrErrVarCopy, jmpaddr) \
	visit(__vbaVarLateMemCallLd, jmpaddr) \
	visit(__vbaVarLateMemCallLdRf, jmpaddr) \
	visit(__vbaVarLateMemCallSt, jmpaddr) \
	visit(__vbaVarLateMemSt, jmpaddr) \
	visit(__vbaVarLateMemStAd, jmpaddr) \
	visit(__vbaAryVarVarg, jmpaddr) \
	visit(__vbaFpCDblR4, jmpaddr) \
	visit(__vbaFpCDblR8, jmpaddr) \
	visit(__vbaFpCSngR4, jmpaddr) \
	visit(__vbaFpCSngR8, jmpaddr) \
	visit(__vbaFpCmpCy, jmpaddr) \
	visit(__vbaFpCy, jmpaddr) \
	visit(__vbaFpI2, jmpaddr) \
	visit(__vbaFpI4, jmpaddr) \
	visit(__vbaFpR4, jmpaddr) \
	visit(__vbaFpR8, jmpaddr) \
	visit(__vbaFpUI1, jmpaddr) \
	visit(__vbaFreeObj, jmpaddr) \
	visit(__vbaFreeStr, jmpaddr) \
	visit(__vbaFreeVar, jmpaddr) \
	visit(__vbaFreeVarg, jmpaddr) \
	visit(__vbaI2Abs, jmpaddr) \
	visit(__vbaI2I4, jmpaddr) \
	visit(__vbaI2Sgn, jmpaddr) \
	visit(__vbaI4Abs, jmpaddr) \
	visit(__vbaI4Sgn, jmpaddr) \
	visit(__vbaStrCopy, jmpaddr) \
	visit(__vbaStrMove, jmpaddr) \
	visit(__vbaUI1I2, jmpaddr) \
	visit(__vbaUI1I4, jmpaddr) \
	visit(__vbaUI1Sgn, jmpaddr) \
	visit(__vbaVarCopy, jmpaddr) \
	visit(__vbaVarDup, jmpaddr) \
	visit(__vbaVarMove, jmpaddr) \
	visit(__vbaVarVargNofree, jmpaddr) \
	visit(__vbaVarZero, jmpaddr) \
	visit(__vbaVargParmRef, jmpaddr) \
	visit(__vbaVargVar, jmpaddr) \
	visit(__vbaVargVarCopy, jmpaddr) \
	visit(__vbaVargVarMove, jmpaddr) \
	visit(__vbaVargVarRef, jmpaddr) \
	visit(DLLGetDocumentation, jmpaddr) \
	visit(_CIatan, jmpaddr) \
	visit(_CIcos, jmpaddr) \
	visit(_CIexp, jmpaddr) \
	visit(_CIlog, jmpaddr) \
	visit(_CIsin, jmpaddr) \
	visit(_CIsqrt, jmpaddr) \
	visit(_CItan, jmpaddr) \
	visit(__vbaAptOffset, jmpaddr) \
	visit(__vbaAryConstruct2, jmpaddr) \
	visit(__vbaAryConstruct, jmpaddr) \
	visit(__vbaAryCopy, jmpaddr) \
	visit(__vbaAryDestruct, jmpaddr) \
	visit(__vbaAryMove, jmpaddr) \
	visit(__vbaAryRebase1Var, jmpaddr) \
	visit(__vbaAryRecCopy, jmpaddr) \
	visit(__vbaAryRecMove, jmpaddr) \
	visit(__vbaAryUnlock, jmpaddr) \
	visit(__vbaAryVar, jmpaddr) \
	visit(__vbaBoolStr, jmpaddr) \
	visit(__vbaBoolVar, jmpaddr) \
	visit(__vbaBoolVarNull, jmpaddr) \
	visit(__vbaCVarAryUdt, jmpaddr) \
	visit(__vbaCastObj, jmpaddr) \
	visit(__vbaCastObjVar, jmpaddr) \
	visit(__vbaCheckType, jmpaddr) \
	visit(__vbaCheckTypeVar, jmpaddr) \
	visit(__vbaChkstk, jmpaddr) \
	visit(__vbaCopyBytes, jmpaddr) \
	visit(__vbaCopyBytesZero, jmpaddr) \
	visit(__vbaCyAbs, jmpaddr) \
	visit(ProcCallEngine, jmpaddr) \
	visit(DllFunctionCall, jmpaddr) \
	visit(__vbaCyAdd, jmpaddr) \
	visit(__vbaCyErrVar, jmpaddr) \
	visit(CopyRecord, jmpaddr) \
	visit(__vbaCyFix, jmpaddr) \
	visit(__vbaCyForInit, jmpaddr) \
	visit(__vbaCyForNext, jmpaddr) \
	visit(__vbaCyI2, jmpaddr) \
	visit(TipGetAddressOfPredeclaredInstance, jmpaddr) \
	visit(__vbaCyI4, jmpaddr) \
	visit(__vbaCyInt, jmpaddr) \
	visit(__vbaCyMul, jmpaddr) \
	visit(MethCallEngine, jmpaddr) \
	visit(__vbaCyMulI2, jmpaddr) \
	visit(__vbaCySgn, jmpaddr) \
	visit(__vbaCyStr, jmpaddr) \
	visit(__vbaCySub, jmpaddr) \
	visit(__vbaCyUI1, jmpaddr) \
	visit(__vbaCyVar, jmpaddr) \
	visit(__vbaDateR4, jmpaddr) \
	visit(__vbaDateR8, jmpaddr) \
	visit(__vbaDateStr, jmpaddr) \
	visit(__vbaDateVar, jmpaddr) \
	visit(__vbaDerefAry, jmpaddr) \
	visit(__vbaDerefAry1, jmpaddr) \
	visit(__vbaEnd, jmpaddr) \
	visit(__vbaErase, jmpaddr) \
	visit(__vbaEraseKeepData, jmpaddr) \
	visit(__vbaEraseNoPop, jmpaddr) \
	visit(__vbaError, jmpaddr) \
	visit(__vbaErrorOverflow, jmpaddr) \
	visit(__vbaExceptHandler, jmpaddr) \
	visit(__vbaExitEachAry, jmpaddr) \
	visit(TipSetOption, jmpaddr) \
	visit(__vbaExitEachColl, jmpaddr) \
	visit(__vbaExitEachVar, jmpaddr) \
	visit(__vbaExitProc, jmpaddr) \
	visit(__vbaFPException, jmpaddr) \
	visit(__vbaFPFix, jmpaddr) \
	visit(__vbaFPInt, jmpaddr) \
	visit(TipUnloadProject, jmpaddr) \
	visit(__vbaFailedFriend, jmpaddr) \
	visit(__vbaFileClose, jmpaddr) \
	visit(TipCreateInstanceProject2, jmpaddr) \
	visit(EbResetProject, jmpaddr) \
	visit(EbGetHandleOfExecutingProject, jmpaddr) \
	visit(__vbaFileCloseAll, jmpaddr) \
	visit(__vbaFileLock, jmpaddr) \
	visit(__vbaFileOpen, jmpaddr) \
	visit(__vbaFileSeek, jmpaddr) \
	visit(__vbaFixstrConstruct, jmpaddr) \
	visit(__vbaForEachAry, jmpaddr) \
	visit(__vbaForEachCollAd, jmpaddr) \
	visit(__vbaForEachCollObj, jmpaddr) \
	visit(__vbaForEachCollVar, jmpaddr) \
	visit(__vbaForEachVar, jmpaddr) \
	visit(__vbaFreeObjList, jmpaddr) \
	visit(__vbaFreeStrList, jmpaddr) \
	visit(__vbaFreeVarList, jmpaddr) \
	visit(__vbaGenerateBoundsError, jmpaddr) \
	visit(__vbaGet3, jmpaddr) \
	visit(__vbaGet4, jmpaddr) \
	visit(__vbaGetFxStr3, jmpaddr) \
	visit(__vbaGetFxStr4, jmpaddr) \
	visit(__vbaGetOwner3, jmpaddr) \
	visit(__vbaGetOwner4, jmpaddr) \
	visit(__vbaGosub, jmpaddr) \
	visit(__vbaGosubFree, jmpaddr) \
	visit(__vbaGosubReturn, jmpaddr) \
	visit(__vbaHresultCheck, jmpaddr) \
	visit(__vbaHresultCheckNonvirt, jmpaddr) \
	visit(__vbaHresultCheckObj, jmpaddr) \
	visit(__vbaI2Cy, jmpaddr) \
	visit(__vbaI2ErrVar, jmpaddr) \
	visit(__vbaI2ForNextCheck, jmpaddr) \
	visit(__vbaI2Str, jmpaddr) \
	visit(__vbaI2Var, jmpaddr) \
	visit(__vbaI4Cy, jmpaddr) \
	visit(EbResetProjectNormal, jmpaddr) \
	visit(TipUnloadInstance, jmpaddr) \
	visit(__vbaI4ErrVar, jmpaddr) \
	visit(EbLibraryLoad, jmpaddr) \
	visit(EbLibraryUnload, jmpaddr) \
	visit(__vbaI4ForNextCheck, jmpaddr) \
	visit(EbLoadRunTime, jmpaddr) \
	visit(__vbaI4Str, jmpaddr) \
	visit(__vbaI4Var, jmpaddr) \
	visit(EbCreateContext, jmpaddr) \
	visit(EbDestroyContext, jmpaddr) \
	visit(EbSetContextWorkerThread, jmpaddr) \
	visit(__vbaInStr, jmpaddr) \
	visit(__vbaInStrB, jmpaddr) \
	visit(__vbaInStrVar, jmpaddr) \
	visit(__vbaInStrVarB, jmpaddr) \
	visit(__vbaInputFile, jmpaddr) \
	visit(__vbaLateIdCall, jmpaddr) \
	visit(__vbaLateIdCallLd, jmpaddr) \
	visit(EbGetErrorInfo, jmpaddr) \
	visit(__vbaLateIdCallSt, jmpaddr) \
	visit(__vbaLateIdNamedCall, jmpaddr) \
	visit(__vbaLateIdNamedCallLd, jmpaddr) \
	visit(__vbaLateIdNamedCallSt, jmpaddr) \
	visit(__vbaLateIdNamedStAd, jmpaddr) \
	visit(__vbaLateIdSt, jmpaddr) \
	visit(__vbaLateIdStAd, jmpaddr) \
	visit(__vbaLateMemCall, jmpaddr) \
	visit(__vbaLateMemCallLd, jmpaddr) \
	visit(__vbaLateMemCallSt, jmpaddr) \
	visit(__vbaLateMemNamedCall, jmpaddr) \
	visit(__vbaLateMemNamedCallLd, jmpaddr) \
	visit(__vbaLateMemNamedCallSt, jmpaddr) \
	visit(EbIsProjectOnStack, jmpaddr) \
	visit(TipCreateInstanceEx, jmpaddr) \
	visit(GetMem2, jmpaddr) \
	visit(GetMem4, jmpaddr) \
	visit(GetMem8, jmpaddr) \
	visit(GetMemStr, jmpaddr) \
	visit(GetMemVar, jmpaddr) \
	visit(GetMemObj, jmpaddr) \
	visit(PutMem2, jmpaddr) \
	visit(PutMem4, jmpaddr) \
	visit(PutMem8, jmpaddr) \
	visit(PutMemStr, jmpaddr) \
	visit(PutMemVar, jmpaddr) \
	visit(PutMemObj, jmpaddr) \
	visit(SetMemVar, jmpaddr) \
	visit(SetMemObj, jmpaddr) \
	visit(GetMemNewObj, jmpaddr) \
	visit(PutMemNewObj, jmpaddr) \
	visit(SetMemNewObj, jmpaddr) \
	visit(GetMem1, jmpaddr) \
	visit(PutMem1, jmpaddr) \
	visit(GetMemEvent, jmpaddr) \
	visit(PutMemEvent, jmpaddr) \
	visit(SetMemEvent, jmpaddr) \
	visit(__vbaLateMemNamedStAd, jmpaddr) \
	visit(__vbaLateMemSt, jmpaddr) \
	visit(__vbaLateMemStAd, jmpaddr) \
	visit(__vbaLbound, jmpaddr) \
	visit(__vbaLdZeroAry, jmpaddr) \
	visit(__vbaLenBstr, jmpaddr) \
	visit(__vbaLenBstrB, jmpaddr) \
	visit(__vbaLenVar, jmpaddr) \
	visit(__vbaLenVarB, jmpaddr) \
	visit(__vbaLineInputStr, jmpaddr) \
	visit(__vbaLineInputVar, jmpaddr) \
	visit(__vbaLsetFixstr, jmpaddr) \
	visit(__vbaLsetFixstrFree, jmpaddr) \
	visit(__vbaMidStmtBstr, jmpaddr) \
	visit(__vbaMidStmtBstrB, jmpaddr) \
	visit(__vbaMidStmtVar, jmpaddr) \
	visit(__vbaMidStmtVarB, jmpaddr) \
	visit(__vbaNameFile, jmpaddr) \
	visit(__vbaNew2, jmpaddr) \
	visit(__vbaNew, jmpaddr) \
	visit(__vbaNextEachAry, jmpaddr) \
	visit(__vbaNextEachCollAd, jmpaddr) \
	visit(__vbaNextEachCollObj, jmpaddr) \
	visit(__vbaNextEachCollVar, jmpaddr) \
	visit(__vbaNextEachVar, jmpaddr) \
	visit(__vbaObjAddref, jmpaddr) \
	visit(__vbaObjIs, jmpaddr) \
	visit(__vbaObjSet, jmpaddr) \
	visit(__vbaObjSetAddref, jmpaddr) \
	visit(__vbaObjVar, jmpaddr) \
	visit(__vbaOnError, jmpaddr) \
	visit(__vbaOnGoCheck, jmpaddr) \
	visit(__vbaPowerR8, jmpaddr) \
	visit(__vbaPrintFile, jmpaddr) \
	visit(__vbaPrintObj, jmpaddr) \
	visit(__vbaPut3, jmpaddr) \
	visit(__vbaPut4, jmpaddr) \
	visit(__vbaPutFxStr3, jmpaddr) \
	visit(__vbaPutFxStr4, jmpaddr) \
	visit(__vbaPutOwner3, jmpaddr) \
	visit(__vbaPutOwner4, jmpaddr) \
	visit(__vbaR4Cy, jmpaddr) \
	visit(__vbaR4ErrVar, jmpaddr) \
	visit(__vbaR4ForNextCheck, jmpaddr) \
	visit(__vbaR4Sgn, jmpaddr) \
	visit(__vbaR4Str, jmpaddr) \
	visit(__vbaR4Var, jmpaddr) \
	visit(__vbaR8Cy, jmpaddr) \
	visit(__vbaR8ErrVar, jmpaddr) \
	visit(__vbaR8FixI2, jmpaddr) \
	visit(__vbaR8FixI4, jmpaddr) \
	visit(__vbaR8ForNextCheck, jmpaddr) \
	visit(__vbaR8IntI2, jmpaddr) \
	visit(__vbaR8IntI4, jmpaddr) \
	visit(__vbaR8Sgn, jmpaddr) \
	visit(__vbaR8Str, jmpaddr) \
	visit(__vbaR8Var, jmpaddr) \
	visit(__vbaRaiseEvent, jmpaddr) \
	visit(__vbaRecAnsiToUni, jmpaddr) \
	visit(__vbaRecAssign, jmpaddr) \
	visit(__vbaRecDestruct, jmpaddr) \
	visit(__vbaRecDestructAnsi, jmpaddr) \
	visit(__vbaRecUniToAnsi, jmpaddr) \
	visit(__vbaRedim, jmpaddr) \
	visit(__vbaRedimPreserve, jmpaddr) \
	visit(__vbaRedimPreserveVar, jmpaddr) \
	visit(__vbaRedimPreserveVar2, jmpaddr) \
	visit(__vbaRedimVar, jmpaddr) \
	visit(__vbaRefVarAry, jmpaddr) \
	visit(__vbaResume, jmpaddr) \
	visit(__vbaRsetFixstr, jmpaddr) \
	visit(__vbaRsetFixstrFree, jmpaddr) \
	visit(__vbaSetSystemError, jmpaddr) \
	visit(__vbaStopExe, jmpaddr) \
	visit(__vbaStr2Vec, jmpaddr) \
	visit(__vbaStrAryToAnsi, jmpaddr) \
	visit(__vbaStrAryToUnicode, jmpaddr) \
	visit(__vbaStrBool, jmpaddr) \
	visit(EVENT_SINK_QueryInterface, jmpaddr) \
	visit(EVENT_SINK_AddRef, jmpaddr) \
	visit(EVENT_SINK_Release, jmpaddr) \
	visit(EVENT_SINK_GetIDsOfNames, jmpaddr) \
	visit(EVENT_SINK_Invoke, jmpaddr) \
	visit(__vbaStrCat, jmpaddr) \
	visit(__vbaStrCmp, jmpaddr) \
	visit(__vbaStrComp, jmpaddr) \
	visit(__vbaStrCompVar, jmpaddr) \
	visit(__vbaStrCy, jmpaddr) \
	visit(BASIC_CLASS_QueryInterface, jmpaddr) \
	visit(BASIC_CLASS_AddRef, jmpaddr) \
	visit(BASIC_CLASS_Release, jmpaddr) \
	visit(BASIC_CLASS_GetIDsOfNames, jmpaddr) \
	visit(BASIC_CLASS_Invoke, jmpaddr) \
	visit(__vbaStrDate, jmpaddr) \
	visit(__vbaStrFixstr, jmpaddr) \
	visit(__vbaStrI2, jmpaddr) \
	visit(__vbaStrI4, jmpaddr) \
	visit(__vbaStrLike, jmpaddr) \
	visit(BASIC_DISPINTERFACE_GetTICount, jmpaddr) \
	visit(BASIC_DISPINTERFACE_GetTypeInfo, jmpaddr) \
	visit(__vbaStrR4, jmpaddr) \
	visit(__vbaStrR8, jmpaddr) \
	visit(__vbaStrTextCmp, jmpaddr) \
	visit(__vbaStrTextLike, jmpaddr) \
	visit(__vbaStrToAnsi, jmpaddr) \
	visit(__vbaStrToUnicode, jmpaddr) \
	visit(__vbaStrUI1, jmpaddr) \
	visit(__vbaStrVarCopy, jmpaddr) \
	visit(Zombie_QueryInterface, jmpaddr) \
	visit(Zombie_AddRef, jmpaddr) \
	visit(Zombie_Release, jmpaddr) \
	visit(Zombie_GetTypeInfoCount, jmpaddr) \
	visit(Zombie_GetTypeInfo, jmpaddr) \
	visit(Zombie_GetIDsOfNames, jmpaddr) \
	visit(Zombie_Invoke, jmpaddr) \
	visit(__vbaStrVarMove, jmpaddr) \
	visit(__vbaStrVarVal, jmpaddr) \
	visit(__vbaUI1Cy, jmpaddr) \
	visit(EVENT_SINK2_AddRef, jmpaddr) \
	visit(EVENT_SINK2_Release, jmpaddr) \
	visit(__vbaUI1ErrVar, jmpaddr) \
	visit(__vbaUI1Str, jmpaddr) \
	visit(__vbaUI1Var, jmpaddr) \
	visit(__vbaUbound, jmpaddr) \
	visit(__vbaUdtVar, jmpaddr) \
	visit(__vbaUnkVar, jmpaddr) \
	visit(__vbaVar2Vec, jmpaddr) \
	visit(__vbaVarAbs, jmpaddr) \
	visit(__vbaVarAdd, jmpaddr) \
	visit(__vbaVarAnd, jmpaddr) \
	visit(__vbaVarCat, jmpaddr) \
	visit(__vbaVarCmpEq, jmpaddr) \
	visit(__vbaVarCmpGe, jmpaddr) \
	visit(__vbaVarCmpGt, jmpaddr) \
	visit(__vbaVarCmpLe, jmpaddr) \
	visit(__vbaVarCmpLt, jmpaddr) \
	visit(__vbaVarCmpNe, jmpaddr) \
	visit(__vbaVarDateVar, jmpaddr) \
	visit(__vbaVarDiv, jmpaddr) \
	visit(__vbaVarEqv, jmpaddr) \
	visit(__vbaVarErrI4, jmpaddr) \
	visit(__vbaVarFix, jmpaddr) \
	visit(__vbaVarForInit, jmpaddr) \
	visit(__vbaVarForNext, jmpaddr) \
	visit(__vbaVarIdiv, jmpaddr) \
	visit(__vbaVarImp, jmpaddr) \
	visit(__vbaVarIndexLoad, jmpaddr) \
	visit(__vbaVarIndexLoadRef, jmpaddr) \
	visit(__vbaVarIndexLoadRefLock, jmpaddr) \
	visit(__vbaVarIndexStore, jmpaddr) \
	visit(__vbaVarIndexStoreObj, jmpaddr) \
	visit(__vbaVarInt, jmpaddr) \
	visit(__vbaVarLike, jmpaddr) \
	visit(__vbaVarLikeVar, jmpaddr) \
	visit(__vbaVarMod, jmpaddr) \
	visit(__vbaVarMul, jmpaddr) \
	visit(__vbaVarNeg, jmpaddr) \
	visit(__vbaVarNot, jmpaddr) \
	visit(__vbaVarOr, jmpaddr) \
	visit(__vbaVarPow, jmpaddr) \
	visit(__vbaVarSetObj, jmpaddr) \
	visit(__vbaVarSetObjAddref, jmpaddr) \
	visit(__vbaVarSetUnk, jmpaddr) \
	visit(__vbaVarSetUnkAddref, jmpaddr) \
	visit(__vbaVarSetVar, jmpaddr) \
	visit(__vbaVarSetVarAddref, jmpaddr) \
	visit(__vbaVarSub, jmpaddr) \
	visit(__vbaVarTextCmpEq, jmpaddr) \
	visit(__vbaVarTextCmpGe, jmpaddr) \
	visit(__vbaVarTextCmpGt, jmpaddr) \
	visit(__vbaVarTextCmpLe, jmpaddr) \
	visit(__vbaVarTextCmpLt, jmpaddr) \
	visit(__vbaVarTextCmpNe, jmpaddr) \
	visit(__vbaVarTextLike, jmpaddr) \
	visit(__vbaVarTextLikeVar, jmpaddr) \
	visit(__vbaVarTextTstEq, jmpaddr) \
	visit(__vbaVarTextTstGe, jmpaddr) \
	visit(__vbaVarTextTstGt, jmpaddr) \
	visit(__vbaVarTextTstLe, jmpaddr) \
	visit(__vbaVarTextTstLt, jmpaddr) \
	visit(__vbaVarTextTstNe, jmpaddr) \
	visit(__vbaVarTstEq, jmpaddr) \
	visit(__vbaVarTstGe, jmpaddr) \
	visit(__vbaVarTstGt, jmpaddr) \
	visit(__vbaVarTstLe, jmpaddr) \
	visit(__vbaVarTstLt, jmpaddr) \
	visit(__vbaVarTstNe, jmpaddr) \
	visit(__vbaVarXor, jmpaddr) \
	visit(__vbaVargObj, jmpaddr) \
	visit(__vbaVargObjAddref, jmpaddr) \
	visit(rtcLeftBstr, jmpaddr) \
	visit(rtcLeftVar, jmpaddr) \
	visit(rtcRightBstr, jmpaddr) \
	visit(rtcRightVar, jmpaddr) \
	visit(rtcAnsiValueBstr, jmpaddr) \
	visit(rtcLowerCaseBstr, jmpaddr) \
	visit(rtcLowerCaseVar, jmpaddr) \
	visit(rtcTrimBstr, jmpaddr) \
	visit(rtcTrimVar, jmpaddr) \
	visit(rtcLeftTrimBstr, jmpaddr) \
	visit(rtcLeftTrimVar, jmpaddr) \
	visit(rtcRightTrimBstr, jmpaddr) \
	visit(rtcRightTrimVar, jmpaddr) \
	visit(rtcSpaceBstr, jmpaddr) \
	visit(rtcSpaceVar, jmpaddr) \
	visit(rtcUpperCaseBstr, jmpaddr) \
	visit(rtcUpperCaseVar, jmpaddr) \
	visit(rtcKillFiles, jmpaddr) \
	visit(rtcChangeDir, jmpaddr) \
	visit(rtcMakeDir, jmpaddr) \
	visit(rtcRemoveDir, jmpaddr) \
	visit(rtcChangeDrive, jmpaddr) \
	visit(rtcBeep, jmpaddr) \
	visit(rtcGetTimer, jmpaddr) \
	visit(rtcStrFromVar, jmpaddr) \
	visit(rtcBstrFromAnsi, jmpaddr) \
	visit(rtcPackDate, jmpaddr) \
	visit(rtcPackTime, jmpaddr) \
	visit(rtcGetDateValue, jmpaddr) \
	visit(rtcGetTimeValue, jmpaddr) \
	visit(rtcGetDayOfMonth, jmpaddr) \
	visit(rtcGetHourOfDay, jmpaddr) \
	visit(rtcGetMinuteOfHour, jmpaddr) \
	visit(rtcGetMonthOfYear, jmpaddr) \
	visit(rtcGetPresentDate, jmpaddr) \
	visit(rtcGetSecondOfMinute, jmpaddr) \
	visit(rtcSetDateVar, jmpaddr) \
	visit(rtcSetDateBstr, jmpaddr) \
	visit(rtcSetTimeVar, jmpaddr) \
	visit(rtcSetTimeBstr, jmpaddr) \
	visit(rtcGetDayOfWeek, jmpaddr) \
	visit(rtcGetYear, jmpaddr) \
	visit(rtcFileReset, jmpaddr) \
	visit(rtcFileAttributes, jmpaddr) \
	visit(rtcIsArray, jmpaddr) \
	visit(rtcIsDate, jmpaddr) \
	visit(rtcIsEmpty, jmpaddr) \
	visit(rtcIsError, jmpaddr) \
	visit(rtcIsNull, jmpaddr) \
	visit(rtcIsNumeric, jmpaddr) \
	visit(rtcIsObject, jmpaddr) \
	visit(rtcVarType, jmpaddr) \
	visit(rtDecFromVar, jmpaddr) \
	visit(rtcFileWidth, jmpaddr) \
	visit(rtcInputCount, jmpaddr) \
	visit(rtcInputCountVar, jmpaddr) \
	visit(rtcFileSeek, jmpaddr) \
	visit(rtcFileLocation, jmpaddr) \
	visit(rtcFileLength, jmpaddr) \
	visit(rtcEndOfFile, jmpaddr) \
	visit(rtcHexBstrFromVar, jmpaddr) \
	visit(rtcHexVarFromVar, jmpaddr) \
	visit(rtcOctBstrFromVar, jmpaddr) \
	visit(rtcOctVarFromVar, jmpaddr) \
	visit(rtcFileCopy, jmpaddr) \
	visit(rtcFileDateTime, jmpaddr) \
	visit(rtcFileLen, jmpaddr) \
	visit(rtcGetFileAttr, jmpaddr) \
	visit(rtcSetFileAttr, jmpaddr) \
	visit(rtcR8ValFromBstr, jmpaddr) \
	visit(rtcSin, jmpaddr) \
	visit(rtcCos, jmpaddr) \
	visit(rtcTan, jmpaddr) \
	visit(rtcAtn, jmpaddr) \
	visit(rtcExp, jmpaddr) \
	visit(rtcLog, jmpaddr) \
	visit(rtcRgb, jmpaddr) \
	visit(rtcQBColor, jmpaddr) \
	visit(rtcMacId, jmpaddr) \
	visit(rtcTypeName, jmpaddr) \
	visit(rtcIsMissing, jmpaddr) \
	visit(rtcRandomNext, jmpaddr) \
	visit(rtcRandomize, jmpaddr) \
	visit(rtcMsgBox, jmpaddr) \
	visit(rtcInputBox, jmpaddr) \
	visit(rtcAppActivate, jmpaddr) \
	visit(rtcDoEvents, jmpaddr) \
	visit(rtcSendKeys, jmpaddr) \
	visit(rtcShell, jmpaddr) \
	visit(rtcArray, jmpaddr) \
	visit(__vbaVargUnk, jmpaddr) \
	visit(__vbaVargUnkAddref, jmpaddr) \
	visit(__vbaVerifyVarObj, jmpaddr) \
	visit(rtcGetErl, jmpaddr) \
	visit(rtcStringBstr, jmpaddr) \
	visit(rtcStringVar, jmpaddr) \
	visit(rtcVarBstrFromAnsi, jmpaddr) \
	visit(rtcGetDateBstr, jmpaddr) \
	visit(rtcGetDateVar, jmpaddr) \
	visit(rtcGetTimeBstr, jmpaddr) \
	visit(rtcGetTimeVar, jmpaddr) \
	visit(rtcVarStrFromVar, jmpaddr) \
	visit(rtcSqr, jmpaddr) \
	visit(rtcIMEStatus, jmpaddr) \
	visit(rtcLeftCharBstr, jmpaddr) \
	visit(rtcLeftCharVar, jmpaddr) \
	visit(rtcRightCharBstr, jmpaddr) \
	visit(rtcRightCharVar, jmpaddr) \
	visit(rtcInputCharCount, jmpaddr) \
	visit(rtcInputCharCountVar, jmpaddr) \
	visit(rtcStrConvVar, jmpaddr) \
	visit(__vbaWriteFile, jmpaddr) \
	visit(rtcGetHostLCID, jmpaddr) \
	visit(rtcCreateObject, jmpaddr) \
	visit(rtcGetObject, jmpaddr) \
	visit(rtcAppleScript, jmpaddr) \
	visit(rtcMidBstr, jmpaddr) \
	visit(rtcMidVar, jmpaddr) \
	visit(rtcInStr, jmpaddr) \
	visit(rtcMidCharBstr, jmpaddr) \
	visit(rtcMidCharVar, jmpaddr) \
	visit(rtcInStrChar, jmpaddr) \
	visit(rtBstrFromErrVar, jmpaddr) \
	visit(rtBoolFromErrVar, jmpaddr) \
	visit(rtCyFromErrVar, jmpaddr) \
	visit(rtI2FromErrVar, jmpaddr) \
	visit(rtI4FromErrVar, jmpaddr) \
	visit(rtR4FromErrVar, jmpaddr) \
	visit(rtR8FromErrVar, jmpaddr) \
	visit(rtcDateFromVar, jmpaddr) \
	visit(rtcVarFromVar, jmpaddr) \
	visit(rtcCVErrFromVar, jmpaddr) \
	visit(VarPtr, jmpaddr) \
	visit(rtcDir, jmpaddr) \
	visit(rtcCurrentDirBstr, jmpaddr) \
	visit(rtcCurrentDir, jmpaddr) \
	visit(rtcFreeFile, jmpaddr) \
	visit(rtcCompareBstr, jmpaddr) \
	visit(rtcBstrFromFormatVar, jmpaddr) \
	visit(rtcBstrFromError, jmpaddr) \
	visit(rtcVarFromError, jmpaddr) \
	visit(rtcLenCharVar, jmpaddr) \
	visit(rtcLenVar, jmpaddr) \
	visit(rtcFixVar, jmpaddr) \
	visit(rtcAbsVar, jmpaddr) \
	visit(rtcIntVar, jmpaddr) \
	visit(rtcSgnVar, jmpaddr) \
	visit(_adj_fdiv_m16i, jmpaddr) \
	visit(rtcVarFromFormatVar, jmpaddr) \
	visit(rtcDateAdd, jmpaddr) \
	visit(rtcDateDiff, jmpaddr) \
	visit(rtcDatePart, jmpaddr) \
	visit(rtcPartition, jmpaddr) \
	visit(rtcChoose, jmpaddr) \
	visit(rtcEnvironVar, jmpaddr) \
	visit(rtcEnvironBstr, jmpaddr) \
	visit(rtcSwitch, jmpaddr) \
	visit(rtcCommandBstr, jmpaddr) \
	visit(rtcCommandVar, jmpaddr) \
	visit(rtcSLN, jmpaddr) \
	visit(rtcSYD, jmpaddr) \
	visit(rtcDDB, jmpaddr) \
	visit(rtcIPMT, jmpaddr) \
	visit(rtcPPMT, jmpaddr) \
	visit(rtcPMT, jmpaddr) \
	visit(rtcPV, jmpaddr) \
	visit(rtcFV, jmpaddr) \
	visit(rtcNPer, jmpaddr) \
	visit(rtcRate, jmpaddr) \
	visit(rtcImmediateIf, jmpaddr) \
	visit(rtcIRR, jmpaddr) \
	visit(rtcMIRR, jmpaddr) \
	visit(rtcNPV, jmpaddr) \
	visit(rtcErrObj, jmpaddr) \
	visit(rtUI1FromErrVar, jmpaddr) \
	visit(rtcVarDateFromVar, jmpaddr) \
	visit(_adj_fdiv_m32, jmpaddr) \
	visit(rtcGetSetting, jmpaddr) \
	visit(rtcSaveSetting, jmpaddr) \
	visit(rtcDeleteSetting, jmpaddr) \
	visit(rtcGetAllSettings, jmpaddr) \
	visit(rtcByteValueBstr, jmpaddr) \
	visit(rtcBstrFromByte, jmpaddr) \
	visit(rtcVarBstrFromByte, jmpaddr) \
	visit(rtcCharValueBstr, jmpaddr) \
	visit(rtcBstrFromChar, jmpaddr) \
	visit(rtcVarBstrFromChar, jmpaddr) \
	visit(rtcSetCurrentCalendar, jmpaddr) \
	visit(rtcGetCurrentCalendar, jmpaddr) \
	visit(_adj_fdiv_m32i, jmpaddr) \
	visit(rtcFormatNumber, jmpaddr) \
	visit(rtcFormatCurrency, jmpaddr) \
	visit(rtcFormatPercent, jmpaddr) \
	visit(rtcFormatDateTime, jmpaddr) \
	visit(rtcWeekdayName, jmpaddr) \
	visit(rtcMonthName, jmpaddr) \
	visit(rtcFilter, jmpaddr) \
	visit(rtcInStrRev, jmpaddr) \
	visit(rtcJoin, jmpaddr) \
	visit(rtcSplit, jmpaddr) \
	visit(rtcReplace, jmpaddr) \
	visit(rtcStrReverse, jmpaddr) \
	visit(rtcRound, jmpaddr) \
	visit(rtcCallByName, jmpaddr) \
	visit(rtcCreateObject2, jmpaddr) \
	visit(rtcStrConvVar2, jmpaddr) \
	visit(_adj_fdiv_m64, jmpaddr) \
	visit(_adj_fdiv_r, jmpaddr) \
	visit(_adj_fdivr_m16i, jmpaddr) \
	visit(_adj_fdivr_m32, jmpaddr) \
	visit(_adj_fdivr_m32i, jmpaddr) \
	visit(_adj_fdivr_m64, jmpaddr) \
	visit(_adj_fpatan, jmpaddr) \
	visit(_adj_fprem, jmpaddr) \
	visit(_adj_fprem1, jmpaddr) \
	visit(_adj_fptan, jmpaddr) \
	visit(allmul, jmpaddr) \
	visit(TipInvokeMethod2, jmpaddr) \
	visit(TipInvokeMethod, jmpaddr) \
	visit(IID_IVbaHost, jmpaddr) \
	visit(EbGetObjConnectionCounts, jmpaddr) \
	visit(CreateIExprSrvObj, jmpaddr) \
	visit(EbGetVBAObject, jmpaddr)

#define VISIT_SHARED_MSVBVM_PROCS(visit) \
	visit(DllCanUnloadNow, DllCanUnloadNow_msvbvm60, jmpaddr) \
	visit(DllGetClassObject, DllGetClassObject_msvbvm60, jmpaddr) \
	visit(DllRegisterServer, DllRegisterServer_msvbvm60, jmpaddr) \
	visit(DllUnregisterServer, DllUnregisterServer_msvbvm60, jmpaddr)

#ifdef PROC_CLASS
PROC_CLASS(msvbvm60, dll, VISIT_PROCS_MSVBVM, VISIT_SHARED_MSVBVM_PROCS, VISIT_PROCS_BLANK)
#endif
